草庐IT

Python Pandas 直方图对数刻度

全部标签

python - Python 中的对数不准确

我在公司每天都使用Python2.4。我使用了标准数学库中的多功能对数函数“log”,当我输入log(2**31,2)时,它返回31.000000000000004,这让我觉得有点奇怪。我对2的其他幂也做了同样的事情,而且效果很好。我跑了“log10(2**31)/log10(2)”,我得到了一轮31.0我尝试在Python3.0.1中运行相同的原始函数,假设它已在更高级的版本中修复。为什么会这样?Python中的数学函数是否可能存在一些不准确的地方? 最佳答案 这在计算机算法中是意料之中的。它遵循特定规则,例如IEEE754,这可

python - 想要将 Pandas Dataframe 绘制为具有 log10 比例 x 轴的多个直方图

我在Pandas数据框中有float据。每列代表一个变量(它们有字符串名称),每一行代表一组值(这些行有不重要的整数名称)。>>>printdata0kppawr23kppaspyd13.31238713.26604022.7752020.1000003100.000000100.0000004100.00000039.437420517.01715033.019040...我想为每一列绘制直方图。我取得的最佳结果是使用dataframe的hist方法:data.hist(bins=20)但我希望每个直方图的x轴都在log10范围内。并且bins也在log10规模上,但这很容易使用bi

python - matplotlib/pandas条形图的简单定制(标签、刻度等)

我是matplotlib的新手,我正尝试在pandas中使用它来绘制一些简单的图表。我有一个DataFrame,其中包含两个来自另一个DF的标签“score”和“person”。df1=DataFrame(df,columns=['score','person'])生成此输出:我正在尝试创建一个简单的条形图,以不同颜色显示每个人,这是我目前所拥有的:df1.plot(kind='bar',title='Ranking')我如何自定义它以便图表在x轴上以独特的颜色显示人名并移除图形周围的“框架”?我怎样才能使它成为水平条形图?预先感谢您的帮助。 最佳答案

python - 跨越多行的刻度标签

是否可以让x-tick标签跨越两行?比如说,如果我的x-tick标签是January2008,February2008,March2008我想要他们JanuaryFebruaryMarch200820082008我不想旋转它们。 最佳答案 使用我找到的代码进行快速测试后here,如果你只是在你的刻度标签中添加一个换行符,它似乎确实有效。例如mytics=['January\n2008','February\n2008','March\n2008'] 关于python-跨越多行的刻度标签,

Python:使用 NaN 对数组进行排序

注意:我使用的是Python和numpy数组。我有很多数组,它们都有两列和很多行。第二列中有一些NaN值;第一列只有数字。我想根据第二列以升序对每个数组进行排序,将NaN值排除在外。这是一个大数据集,所以我宁愿不必将NaN值转换为零或其他值。我希望它像这样排序:105.4.22.10.104.26..........53.520.745.902.184.nan19.nan首先,我尝试使用fix_invalid将NaN转换为1x10^20:#data.txthasoneofthearrayswith2columnsandabunchofrows.Data_0_30=array(genfr

python - 删除 matplotlib 中子图上的重叠刻度线

我使用以下函数创建了以下子图集:defcreate31fig(size,xlabel,ylabel,title=None):fig=plt.figure(figsize=(size,size))ax1=fig.add_subplot(311)ax2=fig.add_subplot(312)ax3=fig.add_subplot(313)plt.subplots_adjust(hspace=0.001)plt.subplots_adjust(wspace=0.001)ax1.set_xticklabels([])ax2.set_xticklabels([])xticklabels=ax1

python - 在 python 中将图像划分为 5x5 block 并计算每个 block 的直方图

使用Python,我必须:将Test_Image和Reference_image分成5x5block,计算每个block的直方图,并将其与其他图像中的相同block进行比较。例如:image1(1,1)和image2(1,1)。比较两个图像之间的相似性(应该是变换不变的)。到目前为止,我已经使用hist=numpy.histogram(image,bins=256)计算了整个图像的直方图我想划分图像,然后计算所有这些block的直方图。我还想使用Bhattacharya系数来衡量相似度。任何人都可以指导我如何完成这一过程吗?提前致谢:) 最佳答案

python - python中的对数插值

使用numpy.interp我能够计算在离散数据点处具有给定值的函数的一维分段线性插值。返回我的对数插值是不是类似的函数? 最佳答案 在过去,我只是将普通插值包装在对数空间中,即deflog_interp(zz,xx,yy):logz=np.log10(zz)logx=np.log10(xx)logy=np.log10(yy)returnnp.power(10.0,np.interp(logz,logx,logy))就我个人而言,我更喜欢scipyinterpolationfunctions(正如@mylesgallagher提到的

python - 使用 Bokeh 散点函数的对数刻度

在使用Bokeh的scatter函数时如何获得对数刻度。我正在寻找类似以下内容的内容:scatter(x,y,source=my_source,ylog=True)或scatter(x,y,source=my_source,yscale='log') 最佳答案 沿着这些路线的东西会起作用:importnumpyasnpfrombokeh.plottingimport*N=100x=np.linspace(0.1,5,N)output_file("logscatter.html",title="logaxisscatterexampl

python - python中具有不同x轴和y轴刻度的一个图中的两个(或更多)图

我想要一个坐标轴对象上的3个图形,例如:#examplex-andy-datax_values1=[1,2,3,4,5]y_values1=[1,2,3,4,5]x_values2=[-1000,-800,-600,-400,-200]y_values2=[10,20,39,40,50]x_values3=[150,200,250,300,350]y_values3=[10,20,30,40,50]#makeaxesfig=plt.figure()ax=fig.add_subplot(111)现在我想将所有三个数据集都添加到ax中。但是它们不应共享任何x轴或y轴(从那时起,由于不同的尺